草庐IT

simplexml - PHP simplexml 实体

全部标签

java - 如何找出一个实体是否在 JPA/Hibernate 中分离?

有没有办法查询JPAEntityManager给定实体是否已分离?ThisSOpost正在讨论一个类似的问题,但没有指出一种查询JPAEntityManager实体分离状态的方法。我更喜欢JPA方式,否则是特定于Hibernate的。 最佳答案 要检查给定实体是否由当前PersistenceContext管理,您可以使用EntityManager#contains(Objectentity). 关于java-如何找出一个实体是否在JPA/Hibernate中分离?,我们在StackOve

java - Hibernate:通过 id 获取实体

我有用户实体并试图通过id从base获取它。实体定义如下。packagecom.hibernate.logic;importjava.io.Serializable;importjava.util.Random;importjavax.persistence.*;@Entity@Table(name="users")publicclassUserimplementsSerializable{privatestaticfinallongserialVersionUID=1L;@Id@Column(name="user_id")privateLonguserId;@Column(name=

java - 如何克隆 JPA 实体

我已经在数据库中保存了一个JPA实体。我想要一份它的副本(带有不同的id),修改了一些字段。最简单的方法是什么?喜欢:将其@Id字段设置为null并将其持久化是否可行?我是否必须为实体创建一个克隆方法(复制除@Id之外的所有字段)?还有其他方法(例如使用克隆框架)吗? 最佳答案 使用EntityManager.detach。它使bean不再链接到EntityManager。然后将Id设置为新的Id(如果是自动的,则为null),更改您需要的字段并保留。 关于java-如何克隆JPA实体,

java - JPA,如何使用同一个类(实体)来映射不同的表?

我有两个表:Ta和Tb。它们的表结构完全相同,但表名不同。我尝试创建一个实体类来映射表结构。我的一些常用应用程序模块将使用这个实体类来根据参数动态查询和更新Ta或Tb。可以在JPA中完成吗?如何编写程序在运行时将实体类动态映射到不同的表? 最佳答案 不确定是否可以完全按照自己的意愿进行操作,但可以使用继承来产生相同的结果。AbsT包含所有字段,但没有@Table注释Ta和Tb继承自AbsT并且每个都有一个@Table注释使用@Inheritance(strategy=InheritanceType.TABLE_PER_CLASS)在

java - 如何修改使用 jhipster 生成的现有实体?

我使用jhipster生成器来创建一个项目。我根据jhipsterdocumentation中提供的信息手动生成了一些实体。:Ifyouprefer(orneed)todoadatabaseupdatemanually,hereisthedevelopmentworkflow:ModifyyourJPAentity(addafield,arelationship,etc.)Createanew"changelog"inyoursrc/main/resources/config/liquibase/changelogdirectory.Thefilesinthatdirectoryare

java - 比较 JPA Criteria API 中的日期实体

将JPA2与EclipseLink实现结合使用。我正在尝试构建一个动态查询,它应该会为我带来一些在给定日期后保留的记录。CriteriaBuilderbuilder=em.getCriteriaBuilder();CriteriaQuerycriteria=builder.createQuery(Event.class);Rootroot=criteria.from(Event.class);criteria.select(root);criteria.distinct(true);Listpredicates=newArrayList();//...if(dateLimit!=nul

java - 没有 id 的 JPA 实体

我有一个结构如下的数据库:CREATETABLEentity(idSERIAL,nameVARCHAR(255),PRIMARYKEY(id));CREATETABLEentity_property(entity_idSERIAL,nameVARCHAR(255),valueTEXT);当我尝试创建EntityProperty类时@Entity@Table(name="entity_property")publicclassEntityProperty{privateStringname;privateStringvalue;@Column(name="name")publicStri

java - 是否可以通过扩展 POJO 来构建 JPA 实体?

假设我有以下POJO:publicclassMyThing{privateintmyNumber;privateStringmyData;//assumegetter/settermethods}现在可以将此POJO扩展为JPA实体吗?@Entity@Table(name="my_thing")publicclassMyThingEntityextendsMyThingimplementsSerializable{@Column(name="my_number")//?????????@Column(name="my_data")//????????}我想将POJO与JPA实体分开。P

java - 从 JPA/EJB3 持久性上下文中分离实体

分离通过EntityManager获取的特定JPA实体Bean的最简单方法是什么。或者,我是否可以让查询首先返回分离的对象,以便它们本质上充当“只读”?我想这样做的原因是因为我想修改bean中的数据-仅在我的应用程序中,但从来没有将它持久化到数据库中。在我的程序中,我最终必须在EntityManager上调用flush(),这会将所有从附加实体的更改保存到基础数据库,但我想排除特定对象。 最佳答案 (可能来不及回答,但对其他人有用)我现在正在使用JPA开发我的第一个系统。不幸的是,当这个系统几乎完成时,我遇到了这个问题。简单地说。使

java - 我应该在 JPA 实体中编写 equals() 和 hashCode() 方法吗?

我想检查实体是否在另一个实体的集合成员(@OneToMany或@ManyToMany)中:if(entity2.getEntities1().contains(entity1)){} 最佳答案 不一定。共有三个选项:不要覆盖-这样您将使用实例。当您使用仅附加到session的实体的集合(因此保证是相同的实例)时,这很好。这(对我而言)在许多情况下是首选方式,因为它在覆盖时需要更少的代码和更少的考虑用业务key覆盖hashCode()和equals()。这可能是标识实体的属性的子集。例如,对于User,一个好的业务key可能是user